package com.yingxin.yxerp.module.report.task.request.service;

import com.yingxin.yxerp.module.report.task.request.dto.top.Dto;
import com.yingxin.yxerp.module.report.task.request.vo.req.DynamicTaskRequestQueryVo;
import com.yingxin.yxerp.module.report.task.request.vo.req.DynamicTaskRequestUpdateVo;
import com.yingxin.yxerp.module.report.task.request.vo.resp.DynamicTaskRequestRespVo;
import com.yingxin.yxerp.module.report.task.request.vo.resp.KeyValueRequestRespVo;

import java.util.List;

/**
 * 请求接口 - 接口
 * @author yuebao
 * @date 2023-12-08
 */

public interface InterfaceService {

    /**
     * 查询全部任务列表
     */
    List<DynamicTaskRequestRespVo> list( DynamicTaskRequestQueryVo queryVo );

    /**
     * 根据id查询 {id}
     */
    DynamicTaskRequestRespVo getVo( String id );

    /**
     * 修改
     */
    Dto update(DynamicTaskRequestUpdateVo updateVo );

    /**
     * 任务执行一次 {id}
     */
    Dto run(String id );

    /**
     * 任务启动/停止
     */
    Dto StartOrStop( String id, boolean status );

    /**
     * 任务删除 {id}
     */
    Dto delete( String id );

    /**
     * 联机 {id}
     */
    Dto online( String id );

    /**
     * 来源 数据集
     */
    List<KeyValueRequestRespVo> getCategoryList();

    /**
     * 任务分类 数据集
     */
    List<KeyValueRequestRespVo> getTaskTypeList();

    /**
     * 任务名称 数据集
     */
    List<KeyValueRequestRespVo> getTaskNameList();

    /**
     * 获取任务执行记录状态 数据集
     * @return
     */
    List<KeyValueRequestRespVo> getStatusList();

}
